package com.xyxeshang.es.music.backend.mapper;

import com.xyxeshang.es.music.backend.entity.SongArtist;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @author xyx-Eshang
 */
@Mapper
public interface SongArtistMapper {
	/**
	 * 01. 查询总数
	 *
	 * @return
	 */
	Integer getCount();

	/**
	 * 02. 重置自增主键的序号
	 *
	 * @param autoIncrement
	 */
	void updateAutoIncrement(Integer autoIncrement);

	/**
	 * 03. 获取最大的id
	 *
	 * @return
	 */
	Integer getMaxId();

	/**
	 * 04. 新增
	 *
	 * @param songArtist
	 */
	void save(SongArtist songArtist);

	/**
	 * 05. 根据id获取
	 *
	 * @param songArtistId
	 * @return
	 */
	SongArtist getById(Integer songArtistId);

	/**
	 * 06. 根据歌曲id和作者id获取
	 *
	 * @param songArtist
	 * @return
	 */
	SongArtist getBySongIdAndArtistId(SongArtist songArtist);

	/**
	 * 07. 根据歌曲id获取
	 *
	 * @param songId
	 * @return
	 */
	List<SongArtist> listBySongId(String songId);

	/**
	 * 08. 根据歌曲id删除
	 *
	 * @param songId
	 */
	void deleteBySongId(String songId);
}